<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="lib/vue.js"></script>
</head>
<body>
    <div id="root">
        <button @click="num++">{{num}}</button>
        <button @click="changeUserName">{{obj.userName}}</button>
    </div>
</body>
<script>
    const vm = new Vue({
        el:"#root",
        data:{
            num:1,
            obj:{
                userName:"zhangsan"
            }
        },
        methods:{
            changeUserName(){
                this.obj.userName = "lisi";
            }
        },
        // watch:{
        //     num(newValue,oldValue){
        //         console.log(newValue,oldValue);
        //     },
        //
        //     obj:{
        //         handler(newValue,oldValue){
        //             console.log("obj",newValue,oldValue)
        //         },
        //         deep:true
        //     }
        //
        // }
    })
    vm.$watch("num",function(newValue,oldValue){
        console.log("num",newValue,oldValue)
    })
    vm.$watch("obj",function(newValue,oldValue){
        console.log("obj",newValue.userName,oldValue.userName);
    },{
        deep:true
    })
</script>
</html>